//package com.ruyuan.eshop.construction.service.impl;
//
//import com.ruyuan.eshop.construction.converter.ProductConverter;
//import com.ruyuan.eshop.construction.dao.ItemInfoDAO;
//import com.ruyuan.eshop.construction.dao.SkuInfoDAO;
//import com.ruyuan.eshop.construction.domain.dto.SkuDetailDTO;
//import com.ruyuan.eshop.construction.domain.entity.SkuDetailDO;
//import com.ruyuan.eshop.construction.domain.request.QuerySkuListRequest;
//import com.ruyuan.eshop.common.enums.ProductResultEnum;
//import com.ruyuan.eshop.construction.repository.ProductInfoRepository;
//import com.ruyuan.eshop.construction.service.SkuInfoService;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.stereotype.Service;
//import org.springframework.util.CollectionUtils;
//
//import javax.annotation.Resource;
//import java.util.List;
//import java.util.Set;
//
///**
// * 商品sku信息
// *
// * @author zhonghuashishan
// */
//@Service
//public class SkuInfoServiceImpl implements SkuInfoService {
//
//    @Autowired
//    private SkuInfoDAO skuInfoDAO;
//
//    @Autowired
//    private ItemInfoDAO itemInfoDAO;
//
//    @Resource
//    private ProductConverter productConverter;
//
//    /**
//     *  批量查询商品的SKU信息
//     * @param querySkuListRequest
//     * @return
//     */
//    @Override
//    public List<SkuDetailDTO> selectListBySkuIds(QuerySkuListRequest querySkuListRequest) {
//        // skuId集合是否为空
//        Boolean idSetIsNull = true;
//
//        Set<String> skuIdSet = querySkuListRequest.getSkuIdSet();
//
//        if (!CollectionUtils.isEmpty(skuIdSet)){
//            // 根据skuId查询信息
//            idSetIsNull = false;
//        }
//
//        List<Integer> customResult = querySkuListRequest.getCustomResult();
//
//        List<SkuDetailDO> skuDetailList;
//        if (idSetIsNull) {
//            skuDetailList = skuInfoDAO.selectDetailByLike(querySkuListRequest, customResult);
//        } else {
//            skuDetailList = skuInfoDAO.selectDetailBySkuId(skuIdSet, customResult);
//        }
//
//        // 需要查询销售信息
//        if (customResult.contains(ProductResultEnum.SALE.getCode())) {
//            // 填充skuDetailDTOS的销售信息
//            setSkuOtherResult(skuDetailList, ProductResultEnum.SALE);
//        }
//
//        // 需要查询推广信息
//        if (customResult.contains(ProductResultEnum.POPULARIZE.getCode())) {
//            // 填充skuDetailDTOS的推广信息
//            setSkuOtherResult(skuDetailList, ProductResultEnum.POPULARIZE);
//        }
//        // 对象转换
//        return productConverter.converterSkuDetailList(skuDetailList);
//    }
//
//
//    private void setSkuOtherResult(List<SkuDetailDO> skuDetailDTOS, ProductResultEnum productResultEnum) {
//        for (SkuDetailDO skuDetailDO : skuDetailDTOS) {
//            switch (productResultEnum) {
//                case SALE:
//                    // 查询销售信息
//                    skuDetailDO.setItemSaleDO(itemInfoDAO.selectItemSaleByItemId(skuDetailDO.getSkuInfoDO().getItemId()));
//                    break;
//                case POPULARIZE:
//                    // 查询推广信息
//                    skuDetailDO.setItemPopularizeDO(itemInfoDAO.selectItemPopularizeByItemId(skuDetailDO.getSkuInfoDO().getItemId()));
//                    break;
//                default:
//                    break;
//            }
//        }
//    }
//
//
//}
